1. Field of the Invention
This invention relates to an easy-to-build data processing system, a system for building such a data processing system, and its method.
2. Description of the Prior Art
In general, data processing systems (hereafter called systems) receive external signals, process them as the need arises according to the internal status, and output processing results. Some of these systems, called learning systems, adapt their internal status to external signals to produce desired input/output characteristics.
Such a learning system learns the correspondence between input data and output data. A typical learning system is a neural network. It is an engineering-based data processing system modeling after a network structure of a human brain. A neural network is used, for example, in data processing systems including control applications. It also finds applications in the software field.
FIG. 33 is a conceptual diagram showing an example of a neural network structure. As shown in this figure, a neutral network usually consists of a plurality of neuron-elements N (unit) connected in a plurality of stages. Typically, a load value, indicating the level of stimulus transmission speed, is assigned to each of the links (signal path) L connecting the elements. A function and its parameters are provided to specify how each element generates an output signal (response) upon receiving a combination of input signals (stimuli). In general, because an input signal sent to an element of a layer is represented as a multi-dimensional value with the number of dimensions being the number of output signals from the elements of the previous layer, a load value assigned to each link may be represented as the parameters of a function of an element which receives a multi-dimensional value.
Conventionally, this type of neural network is built as follows. For example, a CAD system, which uses the GUI (Graphical User Interface), is used to define a network; that is, the system is used to define the input/output layers, intermediate layers, and connections between elements. More specifically, the system displays a plurality of elements (N) and links (L), which form the system which the user will build, on the screen to allow the user to layout them to build a network that meets the requirements.
The neural network learns the correspondences between the input signals and the output signals as the load values and element parameters, accumulates the results, and outputs the output signals that correspond to the input signals. There are several algorithms used to learn these correspondences. One known algorithm is a back propagation (error back propagation).
In the back propagation, a plurality of pairs of input signals and their desired output signals (teacher information) are prepared, and the load values and element parameters are modified so that the output signals generated in response to the input signals become closer to the teacher information. Therefore, an error calculated in an element in a layer is sequentially propagated according to the load values assigned to the links to the elements in the previous layer. This means that the more closely an element is associated with the error, the more largely its parameters are modified.
In a traditional system, modification processing means for performing this parameter modification is built after the whole neural network is built based on the neural network structure or the function and its parameters of each element, and then the modification processing means is added to the learning system. FIG. 34 is a conceptual diagram showing the relationship between a traditional neural network and the modification processing means M, with modification processing to be performed on a portion of element N being indicated by an arrow.
As shown in FIG. 34, the modification processing means M is built according to the network structure after the neural network is configured on the screen. This modification processing means M is created by a program which executes the learning system with the specified parameters, obtains an error that is a difference between the output signals and the teacher information that indicates the desired output signals, and modifies the element parameters so that this error converges.
Recently, a neural network also finds applications in the fuzzy inference. In these applications, each stage of the fuzzy inference is made to correspond to each layer of a network. Therefore, the above-mentioned modification means, provided for a neural network, enables each membership function to adjust itself (learning). FIG. 35 is a conceptual diagram showing how the neural network can be applied to the fuzzy inference. In this figure, f, .SIGMA., and .PI. are elements N, representing a function, an algebraic sum, and an algebraic product, respectively.